package com.luyuan.crm.promotion;

import java.util.List;

import com.luyuan.crm.member.model.Member;
import com.luyuan.crm.member.model.MemberLevel;
import com.luyuan.crm.sale.model.Order;
import com.ruijie.foundation.annotation.DomainService;

@DomainService
public interface MemberIntegralPromotionService {

    /**
     * <p>Description:  订单成交，赠送积分，特别说明，增加可用积分、总积分，更新等级            </p>
     * <p>Create Time: 2013-4-29   </p>
     * @author Administrator
     * @param order
     */
    void updateIntegral(Order order);

    /**
     * <p>Description:    赠送积分，特别说明，仅增加可用积分          </p>
     * <p>Create Time: 2013-4-29   </p>
     * @author Administrator
     * @param member
     * @param integral
     * @param remarks
     */
    void bestowIntegral(Member member, int integral, String remarks);

    /**
     * <p>Description:   不更新级别，仅更新折扣           </p>
     * <p>Create Time: 2013-4-29   </p>
     * @author Administrator
     * @param memberLevelPromotion
     */
    void updateMemberLevelPromotion(MemberIntegralPromotion memberLevelPromotion);

    List<MemberIntegralPromotion> getAllMemberLevelPromotion();

    MemberIntegralPromotion findByMemberLevel(MemberLevel memberLevel);

    void updateMemberLiveness();
}
